Controllers are used on a wide variety of devices and systems for controlling various functions in homes and/or buildings and their related grounds. Some controllers have schedule programming that modifies device parameters such as set points as a function of date and/or time. Some such device or system controllers that utilize schedule programming for controlling various functions in homes and/or buildings and their related grounds include, for example, HVAC controllers, water heater controllers, water softener controllers, security system controllers, lawn sprinkler controllers, and lighting system controllers.
In a typical HVAC application, for example, such controllers can be employed to monitor and, if necessary, control various environmental conditions occurring within a home or office building. The controller may include a microprocessor that interacts with other components in the system to regulate the temperature, humidity, venting, and/or air quality occurring at one or more locations. An internal sensor located within the controller and/or one or more remote sensors may be employed to sense when the temperature and/or humidity level reaches a certain threshold level, causing the controller to send a signal to activate or deactivate one or more components in the system.
The controller may be equipped with a user interface that allows the user to monitor and adjust various parameters of the controller. With more modern designs, the user interface typically comprises a liquid crystal display (LCD) or light emitting diode (LED) display inset within a controller housing that contains a microprocessor or the like, an I/O interface, and other components of the controller. The user interface may include a menu-driven interface that allows the user to scroll through one or more menus or screens to adjust the different settings on the controller. In some cases, a program within the controller prompts the user at each menu or screen to input various commands into the interface to adjust the controller settings.
In certain designs, the user interface can be configured to permit the user to program the controller to run on a certain schedule. For example, the controller can include a scheduling routine that allows the user to adjust the heat and cool set points for one or more periods during a particular day in order to conserve energy. Once the parameters for that day have been programmed, the user can then repeat the process to change the settings for the other remaining days. With some designs, the controller may include a feature that allows the user to program a separate schedule for weekday and weekend use, or to copy settings for a particular day and apply those settings towards other days of the week.
Interaction with the user interface can often prove difficult, discouraging many users from attempting to program the controller to run on a schedule. While some modern controllers allow the user to copy settings from one day to another, the number of steps typically required to program the controller are often deemed too complex or time consuming. In some cases, the user interface may not allow the user to select multiple days outside of the normal weekday/weekend scheme. Accordingly, there is an ongoing need in the art to decrease the time and complexity associated with programming a controller to run a multiple-day schedule.